var tempcmt = new Array;

var bug_id = 0;

function bug_edit()
{
   window.location = basedomain+'/bugs/'+bug_id+'/edit';
}

//------------------------------------------------------------------------------

function deleteBug()
{
   $.post(basedomain+'/editbug', {what:'deletebug', bid:bug_id}, function(data)
   {
      if(data == 'deleted'+bug_id ) window.location.reload();
      else alert("oops!\n\n"+data);

   }, 'text');
}

//------------------------------------------------------------------------------

function setfav(infav)
{
   var src     = infav ? '../img/fav.png' : '../img/nofav.png';
   var title   = infav ? 'Эта заметка в Базе знаний.' : 'Эта заметка не в Базе знаний.';
   var onclick = infav ? 'delfromfavs()' : 'add2favs()';
   
   $('#infavico').attr({src:src, title:title, onClick:onclick});
}

function add2favs()
{
   $.post(basedomain+'/editbug', {what:'setfav', bid:bug_id, fav:1}, function(data)
   {
      if(data == 'ok' ) setfav(1);
      else alert("oops!\n\n"+data);

   }, 'text');
}

function delfromfavs()
{
   $.post(basedomain+'/editbug', {what:'setfav', bid:bug_id, fav:0}, function(data)
   {
      if(data == 'ok' ) setfav(0);
      else alert("oops!\n\n"+data);

   }, 'text');
}


//------------------------------------------------------------------------------


function cancelchangestatus(changed)
{
   a = typeof(changed) != 'undefined' ? changed : false;

   $('#dvBugStatusChanger').fadeOut('fast', function()
   {
      $('#dvBugStatus').fadeIn(100);

      if(changed) $('#dvBugStatus').children('a').text( $('#iBugStatusChanger').children('option:selected').text() );

      $('body').unbind('click');
   });
}


function changestatus()
{
   $('#dvBugStatus').fadeOut('fast', function()
   {
      $('#dvBugStatusChanger').fadeIn(100);

      $('#iBugStatusChanger').focus();
      $('body').click(function(elm)
      {
         if( $(elm.target).closest('#iBugStatusChanger, #iBugStatusSubmit').length == 0 ) cancelchangestatus();
      });
   });
}


function submitnewstatus()
{
   var ss = $('#iBugStatusChanger').val();
   
   $.post(basedomain+'/editbug', {what:'changestatus', status:ss, bid:bug_id}, function(data)
   {
      if(data == 'ok')
      {
         cancelchangestatus(true);
      }
      else
      {
         alert("Something nasty happened.\nTry again later.\n\n"+data);
      }
   });
}


//------------------------------------------------------------------------------


function checkform()
{
   var lName = 6; //$('#iCName').val().length;
   var lCmt = 11; //$('#tinymce').text().length;
   
   if(lName > 5 && lCmt > 10)
   {
      enableButton('btnCSubmit');
   }
   else disableButton('btnCSubmit');
}

//------------------------------------------------------------------------------


function toggleCommentForm(act, cid, formid, linkid)
{
   if(act == 'open')
   {
      $.post(basedomain+'/editcomment', {what:'editcommentform', cid:cid, bid:bug_id}, function(data)
      {
         if(data!='error' && data.length > 10)
         {
            tempcmt[cid] = $('#'+formid).html();
            $('#'+formid).html(data);
         
            $('#'+formid).fadeIn('fast');
            tinymceInit('textarea');
         }
         else alert("oops!\n\n"+data);
      }, 'text');
   }
   else if(act == 'close')
   {
      $('#'+formid).html(tempcmt[cid]);
   }
}

//------------------------------------------------------------------------------


function deleteComment(cid)
{
   $.post(basedomain+'/editcomment', {what:'deletecomment', cid:cid, bid:bug_id}, function(data)
   {
      if(data == 'deleted'+cid ) window.location.reload();
      else alert("oops!\n\n"+data);
      
   }, 'text');
}

//------------------------------------------------------------------------------


function checkcommentatorname(uid,iid)
{
   if(uid!=1) $('#'+iid).attr('disabled','disabled');
}


//------------------------------------------------------------------------------


function checkbeforesend(uid)
{
   if(uid==1) return confirm('Всё правильно?');
   else return true;
}


//------------------------------------------------------------------------------


function submitComment()
{
   $('#fCmt').submit();
}

//------------------------------------------------------------------------------


function addattachment(divid, ldivid)
{
   divid  = '#'+divid;
   ldivid = '#'+ldivid;

   // hide add-link
   if( $(divid+' .dvattInp:hidden').length == 1 ) $(ldivid+' a:last-child').fadeOut(500);

   //add input
   $(divid+' .dvattInp:hidden:first').fadeIn('fast', function ()
   {

      if( $(divid+' .dvattInp:visible').length > 0 )
      {
         //hide add-link
         $(ldivid+' a:last-child').fadeOut('fast', function()
         {
            //show del-link
            $(ldivid+' a:first-child:hidden').fadeIn('fast');
         });
      }
      //hide del-link
      else $(ldivid+' a:first-child:visible').fadeOut('fast');
   });
}

//------------------------------------------------------------------------------

function delattachment(divid, ldivid)
{
   divid  = '#'+divid;
   ldivid = '#'+ldivid;


   if( $(divid+' .dvattInp:visible').length == 1 )
   {
      //hide del-link
      $(ldivid+' a:first-child').fadeOut('fast', function()
      {
         // show add-link
         $(ldivid+' a:last-child').fadeIn('fast');
      });
   }

   //hide input
   $(divid+' .dvattInp:visible:last').fadeOut('fast', function()
   {
      $(this).children('input').val('');

      if($(divid+' .dvattInp:visible').length = 0 )
      {
         //hide del-link
         $(ldivid+' a:first-child:visible').fadeOut('fast');
      }
   });
}


//------------------------------------------------------------------------------

function initAttachments(dvAttID, c)
{
   var attCount = $(dvAttID+' div').length;

   if(attCount < c) c = attCount;
   
   c = c * 1.6;

   $(dvAttID).animate({height:c+'em'}, '100');
}

//------------------------------------------------------------------------------

function showAttachments(dvAttID, dvSliderID)
{
   var attCount = $(dvAttID+' div').length;

   var attHeight = attCount * 1.6;
   
   $(dvAttID).animate({height:attHeight+'em'}, 'fast');

   $(dvSliderID+' a').unbind('click');
   $(dvSliderID).html('&uarr; <a href="JavaScript: void(0);" title="Свернуть список" >Свернуть cписок</a>');
   $(dvSliderID+' a').click( function(){hideAttachments(dvAttID, dvSliderID);} );
}

//------------------------------------------------------------------------------


function hideAttachments(dvAttID, dvSliderID)
{
   var attCount = $(dvAttID+' div').length;
   
   var attHeight = 1 * 1.6;

   $(dvAttID).animate({height:attHeight+'em'}, 'fast');
   
   $(dvSliderID+' a').unbind('click');
   $(dvSliderID).html('&darr; <a href="JavaScript: void(0);" title="Развернуть полный список файлов" >Показать все приложения ('+attCount+')</a>');
   $(dvSliderID+' a').click( function(){showAttachments(dvAttID, dvSliderID);} );

}


//------------------------------------------------------------------------------























